Next: Minibuffer History, Previous: Text from Minibuffer, Up: Minibuffers [Contents][Index]
This section describes functions for reading Lisp objects with the minibuffer.
This function reads a Lisp object using the minibuffer,
and returns it without evaluating it. The arguments
prompt and initial are used as in
read-from-minibuffer.
This is a simplified interface to the
read-from-minibuffer function:
(read-minibuffer prompt initial) ≡ (let (minibuffer-allow-text-properties) (read-from-minibuffer prompt initial nil t))
Here is an example in which we supply the string
"(testing)" as initial input:
(read-minibuffer
"Enter an expression: " (format "%s" '(testing)))
;; Here is how the minibuffer is displayed:
---------- Buffer: Minibuffer ---------- Enter an expression: (testing)∗ ---------- Buffer: Minibuffer ----------
The user can type RET immediately to use the initial input as a default, or can edit the input.
This function reads a Lisp expression using the
minibuffer, evaluates it, then returns the result. The
arguments prompt and initial are used
as in read-from-minibuffer.
This function simply evaluates the result of a call to
read-minibuffer:
(eval-minibuffer prompt initial) ≡ (eval (read-minibuffer prompt initial))
This function reads a Lisp expression in the minibuffer,
evaluates it, then returns the result. The difference between
this command and eval-minibuffer is that here
the initial form is not optional and it is treated
as a Lisp object to be converted to printed representation
rather than as a string of text. It is printed with
prin1, so if it is a string, double-quote
characters (‘"’) appear in the
initial text. See Output
Functions.
In the following example, we offer the user an expression with initial text that is already a valid form:
(edit-and-eval-command "Please edit: " '(forward-word 1)) ;; After evaluation of the preceding expression, ;; the following appears in the minibuffer:
---------- Buffer: Minibuffer ---------- Please edit: (forward-word 1)∗ ---------- Buffer: Minibuffer ----------
Typing RET right away would exit the minibuffer and evaluate the expression, thus moving point forward one word.
Next: Minibuffer History, Previous: Text from Minibuffer, Up: Minibuffers [Contents][Index]